﻿Imports System.IO
Imports System.Collections.ObjectModel
Imports System.Data
Imports System.Data.OleDb


Public Class Form1

    'كود الاتصال مع قاعدة البيانات بدون كلمة سر للقاعدة

    'Dim con As New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Application.StartupPath & "\db1.mdb" & "")

    ' كود الاتصال مع قاعدة البيانات بكلمة سر للقاعدة 

    Dim con As New OleDb.OleDbConnection("provider=microsoft.jet.oledb.4.0;data source=" & Application.StartupPath & "\db6.mdb")
    Dim DataSet1 As New DataSet
    Dim dataset2 As New DataSet


    Public Sub count()
        On Error Resume Next
        Dim records, current As Integer
        records = Me.BindingContext(DataSet1, "table1").Count
        current = Me.BindingContext(DataSet1, "table1").Position + 1

        Label13.Text = " عدد السجلات  " & current.ToString & " من " & records.ToString



    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load


        On Error Resume Next

        Dim DataAdapter As New OleDbDataAdapter("SELECT * FROM table1 Order By id", con)
        con.Open()
        DataSet1.Clear()
        DataAdapter.Fill(DataSet1, "table1")
        con.Close()
        ' id date1 recfrom amount des bankname bankaccount checkno recname
        Label5.DataBindings.Add("Text", DataSet1, "table1.id")
        txtid.DataBindings.Add("Text", DataSet1, "table1.date1")
        txtdate1.DataBindings.Add("Text", DataSet1, "table1.recfrom")
        txtrecfrom.DataBindings.Add("Text", DataSet1, "table1.amount")
        txtdes.DataBindings.Add("Text", DataSet1, "table1.des")
        txtbankname.DataBindings.Add("Text", DataSet1, "table1.bankname")
        txtbankaccount.DataBindings.Add("Text", DataSet1, "table1.bankaccount")
        txtcheckno.DataBindings.Add("Text", DataSet1, "table1.checkno")
        txtrecname.DataBindings.Add("Text", DataSet1, "table1.recname")

        DataGridView1.DataSource = DataSet1
        DataGridView1.DataMember = "table1"
        DataGridView1.Refresh()
        DataGridView1.RowHeadersWidth = 25
        DataGridView1.Columns(0).Width = 40
        DataGridView1.Columns(1).Width = 90
        DataGridView1.Columns(2).Width = 90
        DataGridView1.Columns(3).Width = 90
        DataGridView1.Columns(4).Width = 90
        DataGridView1.Columns(5).Width = 90
        DataGridView1.Columns(6).Width = 90
        DataGridView1.Columns(7).Width = 90
        DataGridView1.Columns(8).Width = 100

        ' id date1 recfrom amount des bankname bankaccount checkno recname
        DataGridView1.Columns(0).HeaderText = "الرقم"
        DataGridView1.Columns(1).HeaderText = "التاريخ"
        DataGridView1.Columns(2).HeaderText = "مقبوض من"
        DataGridView1.Columns(3).HeaderText = "المبلغ"
        DataGridView1.Columns(4).HeaderText = "الوصف"
        DataGridView1.Columns(5).HeaderText = "اسم البنك"
        DataGridView1.Columns(6).HeaderText = "رقم حساب البنك"
        DataGridView1.Columns(7).HeaderText = "رقم الشيك"
        DataGridView1.Columns(8).HeaderText = "اسم المستلم"

        DataGridView1.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
        count()

    End Sub

    Private Sub CmdNew_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CmdNew.Click
        DataSet1.Clear()
        count()
        txtid.Focus()
        ' ملاحظة / بعد الضغط على زر اضافة سجل جديد / لن تتم الاضافة مالم يتم الضغط بعد ملئ البيانات على زر حفظ عام
    End Sub

    Private Sub CmdSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CmdSave.Click

        '' txtid txtdate1 txtrecfrom txtamount txtdes txtbankname txtbankaccount txtcheckno txtrecname
        'Try
        '    Dim SavInto As New OleDb.OleDbCommand
        '    Dim ConStr As String = _
        '        "Provider=Microsoft.Jet.OLEDB.4.0; Data Source =" & _
        '        Application.StartupPath & "\db6.mdb"
        '    Dim Conn As New OleDbConnection(ConStr)
        '    SavInto.Connection = Conn
        '    SavInto.CommandType = CommandType.Text
        '    SavInto.CommandText = "INSERT INTO Table1(id, date1 ,recfrom ,amount, des ,bankname ,bankaccount, checkno, recname)" & _
        '    "values ('" & txtid.Text & "','" & txtdate1.Text & "','" & txtrecfrom.Text & "','" & txtamount.Text & "','" & txtdes.Text & "','" & txtbankname.Text & "','" & txtbankaccount.Text & "','" & txtcheckno.Text & "','" & txtrecname.Text & "') "
        '    Conn.Open()
        '    SavInto.ExecuteNonQuery()
        '    Conn.Close()
        '    MsgBox("تمت عملية الاضافة والحفظ في قاعدة البيانات بنجاح")
        '    'Me.Close()
        '    'frm1.Show()
        'Catch ex As Exception
        '    Exit Sub
        'End Try
        ' زر الحفظ

        '1 (exception handler) (Try...Catch ex as exception...End Try)
        Try

            '2
            Dim Savecommand As New OleDb.OleDbCommand

            '3
            Dim connectionstring As String = _
                "Provider=Microsoft.Jet.OLEDB.4.0; Data Source =" & _
                Application.StartupPath & "\db001.mdb"

            '4
            Dim newconnection As New OleDbConnection(connectionstring)

            '5
            Savecommand.Connection = newconnection
            Savecommand.CommandType = CommandType.Text

            '6
            Savecommand.CommandText = "INSERT INTO table1(id, date1 ,recfrom ,amount, des ,bankname ,bankaccount, checkno, recname)" & _
            "values ('" & txtid.Text & "','" & txtdate1.Text & "','" & txtrecfrom.Text & "','" & txtamount.Text & "','" & txtdes.Text & "','" & txtbankname.Text & "','" & txtbankaccount.Text & "','" & txtcheckno.Text & "','" & txtrecname.Text & "') "

            '7
            newconnection.Open()
            Savecommand.ExecuteNonQuery()
            newconnection.Close()

            '8
            MsgBox("تمت عملية الاضافة والحفظ في قاعدة البيانات بنجاح")
           
        Catch ex As Exception
            Exit Sub
        End Try

    End Sub
End Class